package com.beiyou.service;

import com.beiyou.controller.UserActivityServlet;
import com.beiyou.model.Activity;
import com.beiyou.model.User;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 *
 * 用户管理的业务逻辑层
 */
public interface Aservice {

    /**
     * 查询所有的活动
     */
    public List<Activity> getAllActivity();

    /**
     * 添加活动
     */
    public int addActivity(Activity activity);

    /**
     * 根据活动名和ID 删除活动
     * 可以使用集合类传递
     * 可以使用变量传递；
     * 注意：如果是一个参数时只需要写一个参数名
     * 如果是两个或；两个以上的参数时需要使用@Param 实现；
     */
    public  int delActivity(@Param("id") String id);

    /**
     * 修改
     *
     * */
    public int updateActivity(Map<String, Object> activityMap);

    /**
     *
     * 模糊查询
     */
    public List<Activity> getActivityByCon(Activity activity);

    /**
     *
     * 查询该用户参加的活动
     */
    public List<Activity> getMyActivityByCon(User user);

    /**
     *
     * 某用户参加某活动
     */
    public int joinActivity(User user,Activity activity);
}
